// ***************** ADC.h ******************

#ifndef ADC_h
#define ADC_h

// ******** ADC_Open *********
//
// Initializes the ADC hardware
// 
// input: none
// output: none
void ADC_Open( void );

// ***** ADC_Collect *****
//
// This function enables periodic ADC sampling for a
// specified number of samples at a given rate. Each 
// sample is stored the specified buffer
//
// inputs: channelNum      - ADC channel to sample from
//         fs              - frequency of sample rate
//         functionPt      - pointer to a function
//         numberOfSampels - the number of samples to take
// outputs: none
void ADC_Collect( unsigned int channelNum, unsigned int fs,
					void functionPt(), unsigned long numberOfSamples);

// ***** IntADCCollet *****
//
// The interrupt handler for period ADC samples. Set
// up by calling ADC_Collect(). Stores ADC value on
// the buffer that define in the ADC_Collect() call
//
// inputs: none
// outputs: none
unsigned long ADC_In(unsigned int channelNum); 
#endif
